home *** CD-ROM | disk | FTP | other *** search
/ Aminet 2 / Aminet AMIGA CDROM (1994)(Walnut Creek)[Feb 1994][W.O. 44790-1].iso / Aminet / comm / uucp / AM114src.lha / server.h < prev    next >
C/C++ Source or Header  |  1992-04-18  |  2KB  |  91 lines

  1. /*
  2.  *
  3.  *  AM --- AmigaMail
  4.  *  (C) 1991, 1992 by Christian Riede
  5.  *
  6.  *  AM is distributed in the hope that it will be useful, but WITHOUT ANY
  7.  *  WARRANTY.  No author or distributor accepts responsibility to anyone
  8.  *  for the consequences of using it or for whether it serves any
  9.  *  particular purpose or works at all, unless he says so in writing.
  10.  *  Refer to the GNU General Public License, Version 1, for full details.
  11.  *  
  12.  *  Everyone is granted permission to copy, modify and redistribute AM,
  13.  *  but only under the conditions described in the GNU General Public
  14.  *  License, Version 1.  A copy of this license is supposed to have been 
  15.  *  given to you along with AM so you can know your rights and responsi-
  16.  *  bilities.  It should be in a file named COPYING.  Among other things,
  17.  *  the copyright notice and this notice must be preserved on all copies.
  18.  *
  19.  *  
  20.  *
  21.  */
  22.  
  23. struct NotifyPort {
  24.     struct Node np_Node;
  25.     struct MsgPort *np_Port;
  26. };
  27.  
  28. extern char User[][USERLEN+1];
  29. extern struct List Mailboxes[];
  30. extern struct List NotifyPortList[];
  31. extern struct Strings Strings[];
  32.  
  33. extern FILE *yyin;
  34.  
  35. struct Strings {
  36.     char **HeaderStrings;
  37.     int NumberOfStrings;
  38.     int StringsAllocated;
  39. };
  40.  
  41.  
  42.  
  43. /*
  44.  *  addmail.c 
  45.  */
  46.  
  47. struct Mail *AddMail(int i,ULONG Number); /* not reentrant (->flex/bison parser) */
  48.  
  49.  
  50. /*
  51.  *  headerstrings.c
  52.  */
  53.  
  54. int ReadStrings(BPTR File,struct Strings *);
  55. int WriteStrings(BPTR File,struct Strings *);
  56. void FreeStrings(struct Strings *);
  57. char *GetString(int Number,struct Strings *);
  58. int GetNumber(char *s,int doinsert,struct Strings *);
  59.  
  60.  
  61. /* 
  62.  *  msgid.c 
  63.  */
  64.  
  65. char *GetNewMsgId(char *);  /* reentrant */
  66.  
  67.  
  68. /*
  69.  *  notify.c
  70.  */
  71.  
  72. /* not reentrant (list not locked) */
  73. void Notify(int User,int Event,int Number,struct Mail *Mail); 
  74.  
  75.  
  76. /*
  77.  *  readcontents.c 
  78.  */
  79.  
  80. int ReadContents(char *username,struct List *Mailbox,struct Strings *Strings); /* reentrant */
  81.  
  82.  
  83. /* 
  84.  *  writecontents.c 
  85.  */
  86.  
  87. /* _not_ reentrant */
  88. int WriteContents(char *username,struct List *Mailbox,struct Strings *Strings);
  89.  
  90.  
  91.